﻿using System;
using MailServer.Server;
using MailServer.Client;
using Microsoft.VisualStudio.TestTools.UnitTesting;

namespace UnitTestMailServer
{
    [TestClass]
    public class UnitTest1
    {
        [TestMethod]
        public void PruebaMessageWaiting()
        {
            Server s1 = new Server();
            Client c1 = new Client(s1, "cliente1");
            Client c2 = new Client(s1, "cliente2");
            Client c3 = new Client(s1, "cliente3");
            c1.SendMessage("cliente2", "prueba1", "el mensaje");
            c3.SendMessage("cliente2", "prueba3", "el mensaje de cliente3");

            Assert.AreEqual(2, s1.GetMessageWaiting("cliente2"));
        }

        [TestMethod]
        public void PruebaVerifySender()
        {
            Server s1 = new Server();
            Client c1 = new Client(s1, "cliente1");
            Client c2 = new Client(s1, "cliente2");
            c1.SendMessage("cliente2", "prueba1", "el mensaje");

            Message m = s1.GetNextMessage("cliente2");
            Assert.AreEqual("cliente1", m.From);
        }
    }
}


